package com.ruoyi.system.domain.excel;

import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.format.DateTimeFormat;
import com.alibaba.excel.annotation.write.style.ColumnWidth;

import java.util.Date;

/**
 * 角色Excel导出实体类
 * 使用EasyExcel原生注解进行Excel导入导出
 *
 * @author share
 */
public class SysRoleExcel {

    /** 角色ID */
    @ExcelProperty(value = "角色序号", index = 0)
    @ColumnWidth(10)
    private Long roleId;

    /** 角色名称 */
    @ExcelProperty(value = "角色名称", index = 1)
    @ColumnWidth(20)
    private String roleName;

    /** 角色权限 */
    @ExcelProperty(value = "角色权限", index = 2)
    @ColumnWidth(20)
    private String roleKey;

    /** 角色排序 */
    @ExcelProperty(value = "角色排序", index = 3)
    @ColumnWidth(10)
    private Integer roleSort;

    /** 数据范围 */
    @ExcelProperty(value = "数据范围", index = 4)
    @ColumnWidth(25)
    private String dataScope;

    /** 角色状态 */
    @ExcelProperty(value = "角色状态", index = 5)
    @ColumnWidth(10)
    private String status;

    /** 创建时间 */
    @ExcelProperty(value = "创建时间", index = 6)
    @DateTimeFormat("yyyy-MM-dd HH:mm:ss")
    @ColumnWidth(20)
    private Date createTime;

    /** 创建人 */
    @ExcelProperty(value = "创建人", index = 7)
    @ColumnWidth(15)
    private String createBy;

    /** 备注 */
    @ExcelProperty(value = "备注", index = 8)
    @ColumnWidth(30)
    private String remark;

    // getter and setter methods
    public Long getRoleId() {
        return roleId;
    }

    public void setRoleId(Long roleId) {
        this.roleId = roleId;
    }

    public String getRoleName() {
        return roleName;
    }

    public void setRoleName(String roleName) {
        this.roleName = roleName;
    }

    public String getRoleKey() {
        return roleKey;
    }

    public void setRoleKey(String roleKey) {
        this.roleKey = roleKey;
    }

    public Integer getRoleSort() {
        return roleSort;
    }

    public void setRoleSort(Integer roleSort) {
        this.roleSort = roleSort;
    }

    public String getDataScope() {
        return dataScope;
    }

    public void setDataScope(String dataScope) {
        this.dataScope = dataScope;
    }

    public String getStatus() {
        return status;
    }

    public void setStatus(String status) {
        this.status = status;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public String getCreateBy() {
        return createBy;
    }

    public void setCreateBy(String createBy) {
        this.createBy = createBy;
    }

    public String getRemark() {
        return remark;
    }

    public void setRemark(String remark) {
        this.remark = remark;
    }
}